
#ifndef __CLIENTGRAPH_H
#define __CLIENTGRAPH_H

#include "Judge.h"

/*
0：红蓝主色；
1：黄色；
2：绿色；
3：橙色；
4：紫红色；
5：粉色；
6：粉色（划掉 青色）；
7：黑色；
8：白色；
*/

extern graphic_data_struct_t graph_data;

typedef enum{
	RoboToClient_GraphType_Line = 0,
	RoboToClient_GraphType_Rect = 1,
	RoboToClient_GraphType_Circle,
	RoboToClient_GraphType_Ellipse,
	RoboToClient_GraphType_Arc,
	RoboToClient_GraphType_Float,
	RoboToClient_GraphType_Integer,
	RoboToClient_GraphType_Char = 7,
}RoboToClient_GraphType;
void init_default_graph_data(void);
void RoboToClientCharCommunicate(char text[30], uint32_t start_x, uint32_t start_y, uint32_t fontsize,
	uint32_t layer, uint32_t color);
void RoboToClientPaintLine(uint32_t start_x, uint32_t start_y, uint32_t end_x, uint32_t end_y, uint32_t width, uint32_t layer, uint32_t color);
void RoboToClientPaintRect(uint32_t start_x, uint32_t start_y, uint32_t end_x, uint32_t end_y, uint32_t width, uint32_t layer, uint32_t color);
void RoboToClientPaintCircle(uint32_t x, uint32_t y, uint32_t radius, uint32_t width, uint32_t layer, uint32_t color);
void RoboToClientPaintEllipse(uint32_t x, uint32_t y, uint32_t radius_x, uint32_t radius_y, uint32_t width, uint32_t layer, uint32_t color);
void RoboToClientPaintArc(uint32_t x, uint32_t y, uint32_t radius_x, uint32_t radius_y, uint32_t start_angle, 
	uint32_t end_angle, uint32_t width, uint32_t layer, uint32_t color);
void RoboToClientPaintFloat(uint32_t start_x, uint32_t start_y, uint32_t floatnumbers, uint32_t fontsize, uint32_t layer, uint32_t color, float number);
void RoboToClientPaintInteger(uint32_t start_x, uint32_t start_y, uint32_t fontsize, uint32_t layer, uint32_t color, uint32_t number);
void ClientClearLayerGraph(uint32_t layer);
void ClientClearAllGraph(void);
#endif
